有關 .NET 技術文檔與命名規範的演變
TLDR
- MSDN 平台已正式走入歷史,相關技術文件已全數遷移至 Microsoft Learn。
- 搜尋舊版 .NET 文件時,建議前往 Microsoft Learn 的「.NET 舊版文件」專區。
- C# 私有 Field 命名規範已由「不使用前綴」轉變為「使用底線 (_) 前綴」。
- 現代 .NET 規範建議:私有執行個體欄位使用
_camelCase,靜態欄位使用s_camelCase,執行緒靜態欄位使用t_camelCase。
MSDN 平台的轉型與文件存取
什麼情況下會遇到這個問題:當開發者嘗試搜尋舊有的 .NET 技術文件或參考 MSDN 連結時。
過去 .NET 技術文件主要集中於 MSDN 平台,目前該平台已正式淘汰,內容已遷移至 Microsoft Learn。若需存取舊版 .NET 文件,請參考以下資源:
TIP
由於文件更新策略的差異,.NET Framework 4 之前的舊資料可能存在不完整的情況。
C# Field 命名規範的演變
什麼情況下會遇到這個問題:當開發團隊在制定 Coding Style 或維護跨世代的 .NET 專案時,對於私有欄位是否應加前綴產生歧義。
規範的歷史差異
早期 .NET Framework 的編碼規範傾向於不使用任何前綴,並建議透過 this. 來區分成員變數與區域變數。然而,隨著 .NET Core 的發展,為了提升程式碼的可維護性與統一性,官方於 2016 年起推廣新的命名慣例。
現代 .NET 命名規範
根據目前的官方建議,私有欄位的命名應遵循以下規則:
- 私人執行個體欄位:使用
_前綴,後接camelCase(例如:_myField)。 - 靜態欄位:使用
s_前綴。 - 執行緒靜態欄位:使用
t_前綴。
結論與建議
在 .NET 5 之後,官方已將上述風格指南統一。若開發者檢視早期的 Reference Source,會發現無前綴、_ 前綴與 m_ 前綴混用的現象,這是歷史演進的結果。建議現代專案應統一遵循 Microsoft Learn 上的 C# 識別碼命名規則和慣例,以確保程式碼風格的一致性。
異動歷程
- 2024-09-20 初版文件建立。
